SLV_RX_DATA_LOST=Val_0x0, SLV_DISABLED_WHILE_BUSY=Val_0x0, IC_EN=Val_0x0
Enable Status Register
IC_EN | The CPU can safely read this bit anytime. When this bit is read as 0x0, the CPU can safely read SLV_RX_DATA_LOST bit and SLV_DISABLED_WHILE_BUSY bit. 0 (Val_0x0): I2C is deemed completely inactive 1 (Val_0x1): I2C is deemed to be in an enabled state |
SLV_DISABLED_WHILE_BUSY | Slave Disabled While Busy (Transmit, Receive). This bit indicates if a potential or active slave operation has been aborted due to the setting I2C_ENABLE[ENABLE] bit from 0x1 to 0x0. This bit is set when the CPU writes a 0x0 to the I2C_ENABLE register while:
0 (Val_0x0): Slave is disabled when it is IDLE 1 (Val_0x1): Slave is disabled when it is active |
SLV_RX_DATA_LOST | Slave Received Data Lost. This bit indicates if a Slave-Receiver operation has been aborted with at least one data byte received from an I2C transfer due to the setting I2C_ENABLE[ENABLE] bit from 0x1 to 0x0. When read as 0x1, I2C is deemed to have been actively engaged in an aborted I2C transfer (with matching address) and the data phase of the I2C transfer has been entered, even though a data byte has been responded with a NACK. If the remote I2C master terminates the transfer with a STOP condition before the I2C has a chance to NACK transfer, and I2C_ENABLE[ENABLE] has been set to 0, then this bit is also set to 0x1. When read as 0x0, I2C is deemed to have been disabled without being actively involved in the data phase of a Slave-Receiver transfer. The CPU can safely read this bit when IC_EN is read as 0x0. 0 (Val_0x0): Slave RX data is not lost 1 (Val_0x1): Slave RX data is lost |